﻿
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace OGS.Contracts
{
    /// <summary>
    /// Stores the ProductInfo Data.
    /// </summary>
    public class Product
    {
        /// <summary>
        /// The ID
        /// </summary>
        public int ID
        {
            get;
            set;
        }

        /// <summary>
        /// The Parent Category ID
        /// </summary>
        public int ParentCategoryID
        {
            get;
            set;
        }

        /// <summary>
        /// The Category ID
        /// </summary>
        public int CategoryID
        {
            get;
            set;
        }

        /// <summary>
        /// The U R L
        /// </summary>
        public string URL
        {
            get;
            set;
        }

        /// <summary>
        /// The Brand ID
        /// </summary>
        public int BrandID
        {
            get;
            set;
        }

        /// <summary>
        /// The S K U
        /// </summary>
        public string SKU
        {
            get;
            set;
        }

        /// <summary>
        /// The Quantity
        /// </summary>
        public string Quantity
        {
            get;
            set;
        }

        /// <summary>
        /// The U O M ID
        /// </summary>
        public int UOMID
        {
            get;
            set;
        }

        /// <summary>
        /// The Avg Rating
        /// </summary>
        public int AvgRating
        {
            get;
            set;
        }

        /// <summary>
        /// The M R P
        /// </summary>
        public decimal MRP
        {
            get;
            set;
        }

        /// <summary>
        /// The Price
        /// </summary>
        public decimal Price
        {
            get;
            set;
        }

        /// <summary>
        /// The Image_ Big
        /// </summary>
        public string Image_Big
        {
            get;
            set;
        }

        /// <summary>
        /// The Image
        /// </summary>
        public string Image
        {
            get;
            set;
        }

        /// <summary>
        /// Checks whether the Product Is Active
        /// </summary>
        public bool IsActive
        {
            get;
            set;
        }

        /// <summary>
        /// The Last Modified By
        /// </summary>
        public int LastModifiedBy
        {
            get;
            set;
        }

        /// <summary>
        /// The Last Modified Date
        /// </summary>
        public DateTime LastModifiedDate
        {
            get;
            set;
        }

        /// <summary>
        /// Checks whether the Product Is Packaged Item
        /// </summary>
        public bool IsPackagedItem
        {
            get;
            set;
        }

        /// <summary>
        /// The Category Name
        /// </summary>
        public string CategoryName { get; set; }

        /// <summary>
        /// The Brand Name
        /// </summary>
        public string BrandName { get; set; }

        /// <summary>
        /// The UOM Name
        /// </summary>
        public string UOMName { get; set; }

        /// <summary>
        /// Product Languages
        /// </summary>
        public List<ProductLanguage> ProductLanguages
        {
            get;
            set;
        }

        /// <summary>
        /// Initializes a new instance of the Product class with no arguments.
        /// </summary>
        public Product()
        {
            this.ProductLanguages = new List<ProductLanguage>();
        }


    }
}